﻿#ifndef _LAYER_SELECTION_H_
#define _LAYER_SELECTION_H_

#include "udatabase/dll_cfg.h"
#include "udatabase/interface/ilayerselection.h"
#include "udatabase/geodb/featureselection.h"

namespace FD
{
	namespace Utility
	{
		namespace Atlas
		{
			/// <summary>
			/// 图层选择类
			/// </summary>
			class FD_DB_Export LayerSelection : public FD::Utility::DB::Interface::ILayerSelection
			{
			public:
				/// <summary>
				/// 构造函数
				/// </summary>
				/// <param name=""></param>
				/// <returns></returns>
				LayerSelection();
				/// <summary>
				/// 析构函数
				/// </summary>
				/// <param name=""></param>
				/// <returns></returns>
				~LayerSelection();

			public:
				/// <summary>
				/// 获取选择集
				/// </summary>
				/// <param name=""></param>
				/// <returns>要素集合</returns>
				FD::Utility::DB::Interface::IFeatureSelection * getSelection() const;

				/// <summary>
				/// 获取选择集的绘制风格
				/// </summary>
				/// <param name=""></param>
				/// <returns>风格</returns>
				FD::Kernel::Drawing::Interface::ISymbol * getSelectionSymbol() const;

				/// <summary>
				/// 设置选择集的绘制风格
				/// </summary>
				/// <param name="symbol">风格</param>
				/// <returns></returns>
				void setSelectionSymbol( /*_in*/ const FD::Kernel::Drawing::Interface::ISymbol *symbol );

			protected:
				C_DISABLE_COPY( LayerSelection );

			public:
				FD::Utility::DB::Interface::IFeatureSelection *m_pSelection;
				FD::Kernel::Drawing::Interface::ISymbol *m_pSymbol;				
			};

		}
	}
}
#endif


